开始之前
上次在学习HashMap就说到本来是要先学习下HashSet的,但是一看代码,HashMap摆在里面,所以只好先看看HashMap去了,现在Map看完了,我们继续看看这HashSet的实现。
类的描述
国际惯例,先来看看类注释
此类实现了Set接口,用hash表实现(实际上是一个HashMap的实例),不保证map的迭代顺序,也不保证元素的顺序不变,允许null元素
该类的一些常规操作只需要O(n)的时间复杂度例如add,remove,contains和size方法,如果hash函数在所有的bucket中合理的分散元素的话,迭代所需要的时间与 HashSet中元素数量和HashMap实例中的bucket数量成正比,因此 , 如果我们注重迭代性能的话,就不要把初始容量设置的过高(或者负载因子设置的太低)
【接下来就是反复唠叨日常copy了】
more >>